package com.activiti.ActivitiUtils.payload;

import java.util.List;
import java.util.Map;

/**
 * create by chongyahhh
 * 2020/4/4
 */
public class TaskPayload {
    private String id;
    private String assigneeId;
    private List<String> groups;
    private String processInstanceId;
    private String parentTaskId;
    private String taskDefinitionKey;
    private String processDefinitionKey;
    private Map<String,Object> taskLocalVariables;
    private Map<String,Object> processVariables;

    public TaskPayload() {
    }

    public TaskPayload(String id, String assigneeId, List<String> groups, String processInstanceId, String parentTaskId, String taskDefinitionKey, String processDefinitionKey) {
        this.id = id;
        this.assigneeId = assigneeId;
        this.groups = groups;
        this.processInstanceId = processInstanceId;
        this.parentTaskId = parentTaskId;
        this.taskDefinitionKey = taskDefinitionKey;
        this.processDefinitionKey = processDefinitionKey;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getAssigneeId() {
        return assigneeId;
    }

    public void setAssigneeId(String assigneeId) {
        this.assigneeId = assigneeId;
    }

    public List<String> getGroups() {
        return groups;
    }

    public void setGroups(List<String> groups) {
        this.groups = groups;
    }

    public String getProcessInstanceId() {
        return processInstanceId;
    }

    public void setProcessInstanceId(String processInstanceId) {
        this.processInstanceId = processInstanceId;
    }

    public String getParentTaskId() {
        return parentTaskId;
    }

    public void setParentTaskId(String parentTaskId) {
        this.parentTaskId = parentTaskId;
    }

    public String getTaskDefinitionKey() {
        return taskDefinitionKey;
    }

    public void setTaskDefinitionKey(String taskDefinitionKey) {
        this.taskDefinitionKey = taskDefinitionKey;
    }

    public String getProcessDefinitionKey() {
        return processDefinitionKey;
    }

    public void setProcessDefinitionKey(String processDefinitionKey) {
        this.processDefinitionKey = processDefinitionKey;
    }

    public Map<String, Object> getTaskLocalVariables() {
        return taskLocalVariables;
    }

    public void setTaskLocalVariables(Map<String, Object> taskLocalVariables) {
        this.taskLocalVariables = taskLocalVariables;
    }

    public Map<String, Object> getProcessVariables() {
        return processVariables;
    }

    public void setProcessVariables(Map<String, Object> processVariables) {
        this.processVariables = processVariables;
    }

    public TaskPayload withId(String id) {
        this.id = id;
        return this;
    }

    public TaskPayload withAssigneeId(String assigneeId) {
        this.assigneeId = assigneeId;
        return this;
    }

    public TaskPayload withGroups(List<String> groups) {
        this.groups = groups;
        return this;
    }

    public TaskPayload withProcessInstanceId(String processInstanceId) {
        this.processInstanceId = processInstanceId;
        return this;
    }

    public TaskPayload withParentTaskId(String parentTaskId) {
        this.parentTaskId = parentTaskId;
        return this;
    }

    public TaskPayload withTaskDefinitionKey(String taskDefinitionKey) {
        this.taskDefinitionKey = taskDefinitionKey;
        return this;
    }

    public TaskPayload withProcessDefinitionKey(String processDefinitionKey) {
        this.processDefinitionKey = processDefinitionKey;
        return this;
    }

    public TaskPayload withTaskLocalVariables(Map<String, Object> taskLocalVariables) {
        this.taskLocalVariables = taskLocalVariables;
        return this;
    }

    public TaskPayload withProcessVariables(Map<String, Object> processVariables) {
        this.processVariables = processVariables;
        return this;
    }
}
